# future anyway.
if [ -z "${windows}" ]; then
rm -rf rustc *.tar.gz
- curl -O $url/rust-nightly-i686-$target.tar.gz
- curl -O $url/rust-nightly-x86_64-$target.tar.gz
- tar xfz rust-nightly-i686-$target.tar.gz
- tar xfz rust-nightly-x86_64-$target.tar.gz
+ curl -O $url/rustc-nightly-i686-$target.tar.gz
+ curl -O $url/rustc-nightly-x86_64-$target.tar.gz
+ tar xfz rustc-nightly-i686-$target.tar.gz
+ tar xfz rustc-nightly-x86_64-$target.tar.gz
if [ "${BITS}" = "32" ]; then
src=x86_64
src=i686
dst=x86_64
fi
- cp -r rust-nightly-$src-$target/rustc/lib/rustlib/$src-$target \
- rust-nightly-$dst-$target/rustc/lib/rustlib
- (cd rust-nightly-$dst-$target && \
- find rustc/lib/rustlib/$src-$target/lib -type f | sed 's/^/file:/' >> \
- manifest-rustc.in)
+ cp -r rustc-nightly-$src-$target/rustc/lib/rustlib/$src-$target \
+ rustc-nightly-$dst-$target/rustc/lib/rustlib
+ (cd rustc-nightly-$dst-$target && \
+ find rustc/lib/rustlib/$src-$target/lib -type f | \
+ sed 's/^rustc\//file:/' >> rustc/manifest.in)
- ./rust-nightly-$dst-$target/install.sh --prefix=rustc
- rm -rf rust-nightly-$src-$target
- rm -rf rust-nightly-$dst-$target
- rm -f rust-nightly-i686-$target.tar.gz
- rm -f rust-nightly-x86_64-$target.tar.gz
+ ./rustc-nightly-$dst-$target/install.sh --prefix=rustc
+ rm -rf rustc-nightly-$src-$target
+ rm -rf rustc-nightly-$dst-$target
+ rm -f rustc-nightly-i686-$target.tar.gz
+ rm -f rustc-nightly-x86_64-$target.tar.gz
else
- rm -rf rustc *.exe
+ rm -rf rustc *.exe *.tar.gz
if [ "${BITS}" = "64" ]; then
triple=x86_64-pc-windows-gnu
else
triple=i686-pc-windows-gnu
fi
- curl -O $url/rust-nightly-$triple.exe
- innounp -y -x rust-nightly-$triple.exe
- mv '{app}' rustc
- # Don't use the bundled gcc, see rust-lang/rust#17442
- rm -rf rustc/bin/rustlib/$triple/bin
- # Don't use bundled gcc libs, see rust-lang/rust#19519
- rm -rf rustc/bin/rustlib/$triple/lib/libmingw*.a
- rm -f rust-nightly-$triple.exe
+ curl -O $url/rustc-nightly-$triple.tar.gz
+ tar xfz rustc-nightly-$triple.tar.gz
+ ./rustc-nightly-$triple/install.sh --prefix=rustc
+ rm -rf rustc-nightly-$triple
+ rm -f rustc-nightly-$triple.tar.gz
fi
set +x
"docopt 0.6.39 (registry+https://github.com/rust-lang/crates.io-index)",
"env_logger 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
"flate2 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
- "git2 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)",
+ "git2 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)",
"git2-curl 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"glob 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
"hamcrest 0.1.0 (git+https://github.com/carllerche/hamcrest-rust.git)",
[[package]]
name = "git2"
-version = "0.1.20"
+version = "0.1.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"curl 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
- "git2 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)",
+ "git2 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)",
"url 0.2.21 (registry+https://github.com/rust-lang/crates.io-index)",
]
#![deny(unused)]
#![feature(collections, hash, libc, os, std_misc, unicode, env, core)]
#![feature(old_io, old_path, str_words)]
+#![cfg_attr(test, deny(warnings))]
extern crate libc;
extern crate "rustc-serialize" as rustc_serialize;
}
pub fn arg<T: BytesContainer>(mut self, arg: T) -> CommandPrototype {
- self.args.push(CString::from_slice(arg.container_as_bytes()));
+ self.args.push(CString::new(arg.container_as_bytes()).unwrap());
self
}
pub fn args<T: BytesContainer>(mut self, arguments: &[T]) -> CommandPrototype {
self.args.extend(arguments.iter().map(|t| {
- CString::from_slice(t.container_as_bytes())
+ CString::new(t.container_as_bytes()).unwrap()
}));
self
}
pub fn env<T: BytesContainer>(mut self, key: &str,
val: Option<T>) -> CommandPrototype {
- let val = val.map(|t| CString::from_slice(t.container_as_bytes()));
+ let val = val.map(|t| CString::new(t.container_as_bytes()).unwrap());
self.env.insert(key.to_string(), val);
self
}
pub fn get_env(&self, var: &str) -> Option<CString> {
self.env.get(var).cloned().or_else(|| {
- Some(env::var(var).ok().map(|s| CString::from_vec(s.into_bytes())))
+ Some(env::var(var).ok().map(|s| CString::new(s).unwrap()))
}).and_then(|val| val)
}
impl ProcessBuilder {
pub fn arg<T: BytesContainer>(mut self, arg: T) -> ProcessBuilder {
- self.args.push(CString::from_slice(arg.container_as_bytes()));
+ self.args.push(CString::new(arg.container_as_bytes()).unwrap());
self
}
pub fn args<T: BytesContainer>(mut self, arguments: &[T]) -> ProcessBuilder {
self.args.extend(arguments.iter().map(|t| {
- CString::from_slice(t.container_as_bytes())
+ CString::new(t.container_as_bytes()).unwrap()
}));
self
}
pub fn env<T: BytesContainer>(mut self, key: &str,
val: Option<T>) -> ProcessBuilder {
- let val = val.map(|t| CString::from_slice(t.container_as_bytes()));
+ let val = val.map(|t| CString::new(t.container_as_bytes()).unwrap());
self.env.insert(key.to_string(), val);
self
}
pub fn process<T: BytesContainer>(cmd: T) -> CargoResult<ProcessBuilder> {
Ok(ProcessBuilder {
- program: CString::from_slice(cmd.container_as_bytes()),
+ program: CString::new(cmd.container_as_bytes()).unwrap(),
args: Vec::new(),
cwd: try!(env::current_dir()),
env: HashMap::new(),
-#![feature(core, io, path)]
+#![feature(core, old_io, old_path)]
extern crate curl;
extern crate "rustc-serialize" as rustc_serialize;